﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.ComponentModel.DataAnnotations;

namespace Wedo.Recognition.Domain.Models
{
    /// <summary>
    /// 导入的账单数据
    /// </summary>
    [Table("IPBankData")]
    public class IPBankData
    {
        public IPBankData()
        {
            Id = Guid.NewGuid();
        }

        #region 银行数据
        /// <summary>
        /// 到账日期
        /// </summary>
        [DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:yyyy-MM-dd}")]
        public DateTime? ReceiveDate { set; get; }

        /// <summary>
        /// 付款人/信用证号/票据号
        /// </summary>
        public string Payer { set; get; }

        /// <summary>
        /// 交易附言/LC发票号码
        /// </summary>
        public string LCNumber { set; get; }

        /// <summary>
        /// 银行名称
        /// </summary>
        public string BankCode { set; get; }

        /// <summary>
        /// 交易附言2
        /// </summary>
        public string TradeAddionalComment { set; get; }

        /// <summary>
        /// 银行备注号码
        /// </summary>
        public string BankRemarkNum { set; get; }

        /// <summary>
        /// 币种
        /// </summary>
        public string Currency { set; get; }

        /// <summary>
        /// 收款类型分为电汇，汇票，信用证，现金和支票
        /// </summary>
        public int ReceiveType { set; get; }

        /// <summary>
        /// 银行实收
        /// </summary>
        public decimal? BankPaidIn { set; get; }

        /// <summary>
        /// 银行手续费
        /// </summary>
        public decimal? BankServiceFee { set; get; } 
        #endregion

        [Key]
        public Guid Id { get; set; }

        /// <summary>
        /// 已经存在,用来在导入时判断用
        /// </summary>
        public bool HasExists { get; set; }

        /// <summary>
        /// 上传批次（自动生成）
        /// </summary>
        public string BatchID { get; set; }


        /// <summary>
        /// 收款类型字符串
        /// </summary>
        public string RecieTypeStr { get; set; }

    }
}
